console.log('===class===')

class Parent {
  constructor() {
    this.name = 'lucy'
  }
  getX() {
    console.log(this)
  }
}
let p1 = new Parent()
// 这里的this-> 实例p1
p1.getX() //=> Parent { name: 'lucy' }

let func = p1.getX
// 这里的this-> undefined
func()

console.log('===对象===')

let obj = {
  name: 'Lucy',
  init() {
    console.log(this)
  }
}

// this->obj对象
obj.init()

let f1 = obj.init
// this->Window（严格模式下this为undefined）
f1()
